Skip to content

Add Synchronization 2 tutorial series #339

Open
gpx1000 wants to merge 5 commits into
KhronosGroup:mainfrom
gpx1000:sync2-tutorial
Open

Add Synchronization 2 tutorial series #339
gpx1000 wants to merge 5 commits into
KhronosGroup:mainfrom
gpx1000:sync2-tutorial

Conversation

@gpx1000
Copy link
Copy Markdown
Contributor

@gpx1000 gpx1000 commented Mar 21, 2026

with validation and advanced topics.

Introduce comprehensive Synchronization 2 tutorial covering modern Vulkan synchronization patterns. Add chapters on dependency anatomy, pipeline barriers, timeline semaphores, frame-in-flight architecture, async compute, transfer queues, dynamic rendering sync, host image copies, and synchronization validation. Include practical examples from Simple Engine and guidance on debugging with validation layers and interpreting VUIDs.

gpx1000 added 2 commits March 20, 2026 23:16
…pics

Introduce comprehensive Synchronization 2 tutorial covering modern Vulkan synchronization patterns. Add chapters on dependency anatomy, pipeline barriers, timeline semaphores, frame-in-flight architecture, async compute, transfer queues, dynamic rendering sync, host image copies, and synchronization validation. Include practical examples from Simple Engine and guidance on debugging with validation layers and interpreting VUIDs.
Update all xref links to use absolute paths prefixed with 'Synchronization/' instead of relative paths. Correct image references to use absolute paths starting with '/images/'. This ensures proper navigation between chapters and correct image rendering across the Synchronization tutorial series.
Copy link
Copy Markdown
Collaborator

@SaschaWillems SaschaWillems left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did a first review run and added comments to the documentation where possible.

The information presented here is great, I'm just not sure if it's the best idea to have this as a separate part of the tutorial.

Here are some random additional thoughts that we could discuss:

  • This duplicates some information we already have in the tutorial and/or the guide
  • It's heavily based on the simple game engine part of the tutorial
    • So it at least should come after that part of the tutorial (in the navigation)
  • It should have a few more links to existing resources, esp. the spec
  • It could use some more images, some chapters are text only and feel like walls of text

So my thought after reading this was "Why a separate chapter, why not integrate this into the tutorial right away?"

Comment thread antora/modules/ROOT/nav.adoc Outdated
Comment thread en/Synchronization/Anatomy_of_a_Dependency/01_introduction.adoc Outdated
Comment thread antora/modules/ROOT/nav.adoc Outdated
Comment thread en/Synchronization/Anatomy_of_a_Dependency/03_sync2_advantage.adoc
Comment thread en/Synchronization/Pipeline_Barriers_Transitions/02_image_barrier.adoc Outdated
Comment thread en/Synchronization/Synchronization_Validation/03_interpreting_vuids.adoc Outdated
Comment thread en/Synchronization/Profiling_Optimization/03_visualizing_stalls.adoc Outdated
gpx1000 added 3 commits May 25, 2026 02:02
…tion tutorial

Update all Markdown code block language identifiers from `[,c++]` to `[,cpp]` throughout the Synchronization tutorial series. Add section on identifying dedicated compute/transfer queues with code examples. Fix typo in function name reference (vkCmdPipelineBarrier2 → vk::CmdPipelineBarrier2). Add warning about eConcurrent performance impact on images. Clarify present operation binary semaphore requirement. Add note about WSI limitations with timeline semaphores. Include tip about using vkconfig for validation setup. Update section heading and VUID example number.
Introduce summary and final thoughts for the Anatomy of a Synchronization Dependency series. Add barrier types comparison table covering global memory, buffer memory, and image memory barriers with their purposes and key structures. Include navigation links to previous and next chapters in the Synchronization tutorial series.
@gpx1000 gpx1000 requested a review from SaschaWillems May 26, 2026 03:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants